package com.localjoycommunity.cpdj.project.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.localjoycommunity.cpdj.framework.aspectj.lang.annotation.Excel;

import java.util.Date;

/**
 * 用户心愿对象 user_wish
 *
 * @author leepandar
 * @date 2020-11-16
 */
public class UserWish {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 用户id
     */
    @Excel(name = "用户id")
    private Long userId;

    /**
     * 心愿id
     */
    @Excel(name = "心愿id")
    private Long wishId;

    /**
     * 进程代码
     * -1:取消
     * 0：未认领
     * 1:微心愿已被认领
     * 2：微心愿审核中
     * 3：微心愿审核结束
     * 4：微心愿礼品已收到等待发往目的地
     * 5:微心愿礼品运输中
     * 6：微心愿礼品已寄到，荣誉证书制作中
     * 7：荣誉证书制作完成发送至用户个人中心
     */
    @Excel(name = "进程代码")
    private Integer stateCode;

    /**
     * 完成时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date complateTime;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(exist = false)
    private Date updateTime;

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setWishId(Long wishId) {
        this.wishId = wishId;
    }

    public Long getWishId() {
        return wishId;
    }

    public void setStateCode(Integer stateCode) {
        this.stateCode = stateCode;
    }

    public Integer getStateCode() {
        return stateCode;
    }

    public void setComplateTime(Date complateTime) {
        this.complateTime = complateTime;
    }

    public Date getComplateTime() {
        return complateTime;
    }

}
